Die Programmiersprache Ruby by David Flanagan & Yukihiro Matsumoto

Die Programmiersprache Ruby by David Flanagan & Yukihiro Matsumoto

Autor:David Flanagan & Yukihiro Matsumoto [David Flanagan & Yukihiro Matsumoto]
Die sprache: deu
Format: epub
ISBN: 9783897218741
Google: G4LYslSmrUQC
Amazon: 3897218747
Herausgeber: O'Reilly
veröffentlicht: 2008-07-14T22:00:00+00:00


6.8 Funktionale Programmierung

Ruby ist keine funktionale Programmiersprache wie Lisp und Haskell, aber Rubys Blöcke, Procs und Lambdas erleichtern einen funktionalen Programmierstil. Jedes Mal, wenn Sie einen Block mit einem Enumerable-Iterator wie map or inject verwenden, programmieren Sie in einem funktionalen Stil. Hier sehen Sie Beispiele, die die Iteratoren map und inject verwenden:

# Mittelwert und Standardabweichung eines Array von Zahlen berechnen mean = a.inject {|x,y| x+y } / a.size sumOfSquares = a.map{|x| (x-mean)**2 }.inject{|x,y| x+y } standardDeviation = Math.sqrt(sumOfSquares/(a.size-1))

Wenn der funktionale Programmierstil für Sie attraktiv ist, ist es leicht, Features zu Rubys eingebauten Klassen hinzuzufügen, die die funktionale Programmierung erleichtern. Der Rest dieses Kapitels erörtert einige Möglichkeiten des Arbeitens mit Funktionen. Der Code in diesem Abschnitt ist dicht gepackt und wird als gedankenanregende Untersuchung präsentiert und nicht als Empfehlung für guten Programmierstil. Besonders die Neudefinition von Operatoren führt, wenn sie derart übertrieben stattfindet wie im nächsten Abschnitt, zu Programmen, die für andere schwierig zu lesen und zu pflegen sind!

Was folgt, ist fortgeschrittene Materie, und der Code setzt voraus, dass Sie Kapitel 7 verinnerlicht haben. Deshalb könnten Sie beim ersten Lesen dieses Buchs den Rest dieses Kapitels überspringen.



Download



Haftungsausschluss:
Diese Site speichert keine Dateien auf ihrem Server. Wir indizieren und verlinken nur                                                  Inhalte von anderen Websites zur Verfügung gestellt. Wenden Sie sich an die Inhaltsanbieter, um etwaige urheberrechtlich geschützte Inhalte zu entfernen, und senden Sie uns eine E-Mail. Wir werden die entsprechenden Links oder Inhalte umgehend entfernen.